<?PHP

/**
 * Classe UsuarioDao
 * Chave de roda
 * Conexão com Banco de dados
 * Lucas Gonçalves, Fernando Angelo, Rafael Macedo
 */
/* Importacao de arquivos */
require_once('ConnectionMysql.php');
require_once('usuario.php');

class UsuarioDAO {
    /* Atributos da classe */

    private $connection = NULL; //Objeto para conexao

    /* Construtor */

    public function __construct() {
        $this->connection = new ConnectionMysql(); //Instancia o objeto de conexao
    }

    /* Funcoes */

    //Funcao para insercao de usuario
    public function insert(usuario $usuario) {
        //Instrucao SQL
        $sql = "INSERT INTO usuario (login, nome, email, cnh, senha)
                    VALUES ('" . $usuario->__getLogin() . "','" . $usuario->__getNome() . "',
                            '" . $usuario->__getEmail() . "','" . $usuario->__getCnh() . "',
                            '" . $usuario->__getSenha() . "')";
        //Inicializa conexao - processa SQL - retorna ResultSet
        return $this->connection->queryConnect($sql);
    }

    // Deleta usuario por id
    public function deletePorId($id) {
        $sql = "Delete FROM usuario where login=" . $id->__getLogin;

        //Inicializa conexao - processa SQL - retorna ResultSet
        return $this->connection->queryConnect($sql);
    }

    // modifica usuario através do ID
    public function ModificaUsuario(Usuario $obj) {
        $sql = "UPDATE usuario 
                       SET login='" . $obj->getLogin()
                . "', nome='" . $obj->getNome()
                . "', email='" . $obj->getEmail()
                . "', cnh='" . $obj->getCnh()
                . "', senha='" . $obj->getSenha()
                . "', where login=" . $obj->getLogin();

        //Inicializa conexao - processa SQL - retorna ResultSet
        return $this->connection->queryConnect($sql);
    }

    // seleciona todos os usuarios...
    public function selectAllInfo($idUser) {
        $sql = "SELECT * FROM usuario WHERE login=" . $idUser;

        //Inicializa conexao - processa SQL - retorna ResultSet
        $result = $this->connection->queryConnect($sql);

        if (mysql_num_rows($result) > 0) {
            $obj = new Usuario();
            $obj->setLogin($idUser);
            $obj->setNome(mysql_result($result, 0, "nome"));
            $obj->setEmail(mysql_result($result, 0, "email"));
            $obj->setCnh(mysql_result($result, 0, "cnh"));
            $obj->setSenha(mysql_result($result, 0, "senha"));


            return $obj;
        } else {
            return NULL;
        }
    }

}

?>
